In a laser printer, printing is achieved by first scanning a digitized image onto a photoconductor. Typically, the scanning is performed with diodes, e.g. laser diodes or light emitting diodes that pulse a beam of energy onto the photoconductor. The photoconductor typically comprises a movable surface coated with a photoconductive material capable of retaining localized electrical charges. The surface of the photoconductor is divided into small units called pixels. Each pixel is capable of being charged to a given electrical potential, independent of the electrical charge of each surrounding pixel.
In operation, the pixels are first charged to a base electrical charge as they move past a charging unit during each revolution of the photoconductor. Then, as the pixels move past the diodes, the beam of energy, e.g. a laser, is pulsed to provide additional electrical charge to selected pixels. The unaltered and altered pixels thus form an image on the photoconductor. One portion of pixels will attract toner, while the other portion will not based on various factors such as the electrical potential of the toner.
Next, the toner is transferred to a finished product medium, e.g. paper, transparency, fabric. After the toner is transferred to the finished product medium, the toner is affixed thereto. Any residual toner on the equipment is then removed by a cleaning station.
The digitized image is essentially organized into a two dimensional matrix within a raster. The image is digitized into a number of lines. Each line comprises a number of discrete points. Each of the points corresponds to a pixel on the photoconductor. Each point is assigned a binary value relating information pertaining to its color and potentially other attributes, such as density. The matrix of points makes up the resultant digitally stored image. The digital image is stored in computer readable memory as a raster image. Video blocks or scan control circuitry read the raster image data and actuates the laser to selectively expose a given pixel based on the presence or absence of coloration, and the degree of coloration for the pixel.
For a four-color laser printer, at least one laser scanner is included in the printer and used to generate a latent electrostatic image on the photoconductor. Generally, one latent electrostatic image is generated for each color plane, e.g. cyan, yellow, magenta, and black, to be printed.
Current video blocks are designed for one type of printer. Thus, a video block designed for a single beam inline printer is not applied to a dual beam video laser printer. While a dual beam video block can be used in a single beam application, the silicon real estate is wasted. Each laser printer video blocks deal with a single pixel at a time. The video hardware sequentially processes the pixels, e.g. one pixel output per clock. This limits the video-processing rate or requires a higher speed clock to produced the desired pixel rate.
FIG. 1 discloses the video processing path in a prior art printer. The direct memory access (DMA) reads in the pixel data from main memory via the System Bus. This pixel data is stored in a large Multi-Line Buffer, so that the data does not have to be read in multiple times. The Serial Video Processor must have data from the rows above and below it for each line processed, e.g. a column. To make this buffer as small as possible, the buffer is shared between the two video channels: the additional video channel only increases the buffer size by a single line.
Since the Multi-line buffer holds a column of pixels, the buffer must be as wide as the longest possible scan line, e.g. page width. For an 8.5″ wide (portrait orientation) 600 pixel per inch system, the buffer needs to be 5100 pixels wide. If another printer can print on 11″ wide (landscape orientation) 1200 ppi printer, the buffer must be 13,200 pixels wide. The ASIC is designed with this buffer in hardware, so the largest printer supported will dictate the size of this buffer. Alternatively, the buffer dictates the maximum size/resolution of a printer.
The Serial Video Processor takes in the data in a 5×5 window of pixels and outputs a single PCODE to represent the center pixel in the window. To generate the next pixel, the window slides over one pixel and presents a new 5×5 window to the serial processor. PCODEs are special codes that contain both Pulse width information (fraction of a full pixel) and justification information (left, right center, split).
Because the two video channels share the buffer, they require that the serial video processors work on the same column. The actual printer's lasers are not working on the same column so the output of one of the serial video processors must be delayed to align with the actual hardware. This is done with another buffer, the PCODE Delay FIFO. This buffer must be large enough to span the separation in columns that exist in the actual hardware. An example size would cover 128 pixels (128×8 bit memory buffer).